Clone this repo:
  1. 4b4e68b ABGRToJ420 call ARGBToI420Matrix by Frank Barchard · 12 minutes ago main
  2. 4aacbbd Refactored RGB/RAW to YUV color conversion functions to use generic Matrix-based functions parameterized by ArgbConstants. by Frank Barchard · 2 days ago
  3. 8773064 Revert "Fix rounding in scaling routines." by Mirko Bonadei · 3 days ago
  4. 37a8481 Fix rounding in scaling routines. by Sergey Silkin · 3 days ago
  5. 125f151 ARGBToNV12 use Matrix by Frank Barchard · 3 days ago

libyuv is an open source project that includes YUV scaling and conversion functionality.

  • Scale YUV to prepare content for compression, with point, bilinear or box filter.
  • Convert to YUV from webcam formats for compression.
  • Convert to RGB formats for rendering/effects.
  • Rotate by 90/180/270 degrees to adjust for mobile devices in portrait mode.
  • Optimized for SSSE3/AVX2 on x86/x64.
  • Optimized for Neon/SVE2/SME on Arm.
  • Optimized for MSA on Mips.
  • Optimized for RVV on RISC-V.

Development

See Getting started for instructions on how to get started developing.

You can also browse the docs directory for more documentation.